Skip to content

Conversation

@abelonogov-ld
Copy link
Contributor

@abelonogov-ld abelonogov-ld commented Jan 7, 2026

Summary

Added 3 new privacy options:

  1. maskViews
  2. maskXMLViewIds
  3. maskImageViews

How did you test this change?

image

Are there any deployment considerations?


Note

Introduces configurable session replay masking and updates examples/docs.

  • Adds MaskViewRef and view(...) helpers to reference target View classes by Class, KClass, or FQCN
  • Extends PrivacyProfile with maskViews, maskXMLViewIds, and maskImageViews; implements viewsMatcher (exact class), xmlViewIdsMatcher (resource entry name normalization), and integrates into matcher list
  • Updates README: corrects SessionReplay import path and documents configuring masking via PrivacyProfile
  • Example app: configures SessionReplay with new PrivacyProfile options; comments out a per-view ldMask() call
  • Tests: adds PrivacyProfileTest covering defaults, matching behavior, and invalid class handling; marks one e2e traces test @Ignore

Written by Cursor Bugbot for commit c57d5c2. This will update automatically on new commits. Configure here.

@abelonogov-ld abelonogov-ld requested a review from a team as a code owner January 7, 2026 02:11
@abelonogov-ld abelonogov-ld changed the title Added 2 new privacy options: maskViews, maskXMLViewIds feat: Added privacy options: maskViews, maskXMLViewIds Jan 7, 2026
@abelonogov-ld abelonogov-ld enabled auto-merge (squash) January 7, 2026 20:25
@abelonogov-ld abelonogov-ld changed the title feat: Added privacy options: maskViews, maskXMLViewIds feat: Added privacy options: maskViews, maskXMLViewIds, maskImageViews Jan 7, 2026
@abelonogov-ld abelonogov-ld disabled auto-merge January 7, 2026 20:53
@abelonogov-ld abelonogov-ld enabled auto-merge (squash) January 7, 2026 21:06
@abelonogov-ld abelonogov-ld merged commit 1c57dc0 into main Jan 7, 2026
25 checks passed
@abelonogov-ld abelonogov-ld deleted the andrey/maskViews branch January 7, 2026 21:11
abelonogov-ld added a commit that referenced this pull request Jan 7, 2026
* main:
  feat: Added privacy options: maskViews, maskXMLViewIds, maskImageViews (#339)

# Conflicts:
#	sdk/@launchdarkly/observability-android/README.md
#	sdk/@launchdarkly/observability-android/lib/src/main/kotlin/com/launchdarkly/observability/replay/PrivacyProfile.kt
Vadman97 pushed a commit that referenced this pull request Jan 7, 2026
🤖 I have created a release *beep* *boop*
---


<details><summary>launchdarkly-observability-android: 0.22.0</summary>

##
[0.22.0](launchdarkly-observability-android-0.21.0...launchdarkly-observability-android-0.22.0)
(2026-01-07)


### Features

* Added privacy options: maskViews, maskXMLViewIds, maskImageViews
([#339](#339))
([1c57dc0](1c57dc0))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> Publishes `observability-android` 0.22.0 with new privacy masking
options.
> 
> - Updates `sdk/@launchdarkly/observability-android` version to
`0.22.0` in `gradle.properties` and `.release-please-manifest.json`
> - `CHANGELOG.md`: adds feature entry for `maskViews`,
`maskXMLViewIds`, and `maskImageViews`
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
7c8b5d9. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
abelonogov-ld added a commit that referenced this pull request Jan 8, 2026
* main:
  chore: release main (#340)
  feat: Added privacy options: maskViews, maskXMLViewIds, maskImageViews (#339)
abelonogov-ld added a commit that referenced this pull request Jan 13, 2026
* main: (29 commits)
  chore: release main (#344)
  feat: Android double masking with frame drop (#342)
  chore: update LaunchDarkly SDK dependencies (#336)
  chore: Android SR - cleanup privacy settings (#341)
  chore: release main (#340)
  feat: Added privacy options: maskViews, maskXMLViewIds, maskImageViews (#339)
  test: O11Y-908 - Add Android CI workflows (#337)
  chore: release main (#335)
  feat: publish umd for broser environments (#334)
  chore: release main (#333)
  feat: Pause and resume replay capture on app background/foreground (#329)
  fix: Fix compose coordinate offset.  (#331)
  chore: release main (#324)
  fix(highlight.run): correct privacy masking for empty strings (#332)
  feat: Android SR Identify support  (#330)
  feat: Gzip compression for Graphql request body (#328)
  docs: Update readme with options refactor (#326)
  feat: Graphql client memory optimization (#325)
  feat: Limit accumulating canvas buffer (#322)
  chore: Fix existing RRwebGraphQLReplayLogExporterTest tests (#321)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants